import java.lang.reflect.Array;
import java.util.Arrays;

public class test {
    //遍历整个数组去比较
    public static int[] towSum(int[] nums,int target) {
        int[] ret = new int[2];
        for (int i = 0; i < nums.length-1; i++) {
            for (int j = i+1; j < nums.length-1;j++) {
                if(nums[i] + nums[j] == target){
                    ret[0] = i;
                    ret[1] = j;
                    return ret;
                }
            }
        }
        return ret;
    }
//无脑遍历
    public static int find (int[] array) {
        for (int i = 0; i < array.length; i++) {
            int count = 0;
            for (int j = 0; j < array.length; j++) {
                if(array[i] == array[j]) {
                    count++;
                }
            }
            if(count > array.length/2) {
                return array[i];
            }
        }
        return -1;
    }

//    给定一个非空整数数组，除了某个元素只出现一次以外，其余每个元素均出现两次。找出那个只出现了一次的元素
//    利用异或 ：0^a = a;a^a = 0;可以巧妙求得这个只出现过一次的数（相当于密钥）
    public static int singleNumber(int[] array) {
        int ret = 0;
        for (int i = 0; i < array.length; i++) {
            ret ^= array[i];
        }
        return ret;

    }


//    给你一个整数数组 arr，请你判断数组中是否存在连续三个元素都是奇数的情况：如果存在，请返回 true ；否则，返回 false 。
    public static boolean oddNumber(int[] arr) {
        int count = 0;
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] % 2 != 0) {
                count++;
                if(count == 3) {
                    return true;
                }
            }else{
                count = 0;//若之间出现偶数则重新计数
            }
        }
        return false;
    }
    public static void main(String[] args) {
//        int[] array = {1,2,3,4,5,6,7};
//        int key = 6;
//        int[] array1 = towSum(array,key);
//        System.out.println(Arrays.toString(array1));
//          int[] arr = new int[]{2,2,1,1,1,2,2};
//          int ret = find(arr);
//        System.out.println(ret);
//          int[] array = {1,1,2,2,4,5,5};
//          int ret = singleNumber(array);
//        System.out.println(ret);
        int[] arr = {1,2,34,3,4,5,7,23,12};
        boolean flg = oddNumber(arr);
        System.out.println(flg);
    }
}
